<?php namespace App\Core\Service\Listeners;

use App\Core\Service\Listener;

abstract class UpdateListener extends Listener {
    
    protected $name = 'update';
    
    //从元数据获取待填充字段前，用于修改原始数据
    public function onUpdateGeneratingFeilds(){}

    //从元数据获取待填充字段后，用于修改待修改字段列表
    public function onUpdateGeneratedFeilds(){}
    
    //数据填充后，用于修改待保存数据
    public function onUpdateGeneratedData(){}
    
    //保存数据前，抛出异常"不会"导致数据库事务回滚
    public function onUpdateBeforeSave(){}
    
    //保存数据前，抛出异常"直接"导致数据库事务回滚
    public function onUpdateSaving(){}
    
    //保存数据后，抛出异常"直接"导致数据库事务回滚
    public function onUpdateSaved(){}
    
    //保存数据后，抛出异常"不会"导致数据库事务回滚
    public function onUpdateAfterSave(){}
}